package com.intelligent.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 采购订单视图对象
 */
@Data
public class PurchaseOrderVO {
    /**
     * 主键ID
     */
    private Long id;

    /**
     * 订单编号
     */
    private String orderNo;

    /**
     * 采购类型（0 生产采购、1 备货采购等）
     */
    private Integer purchaseType;
    
    /**
     * 采购类型名称
     */
    private String purchaseTypeName;

    /**
     * 期望入库时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date expectedStorageTime;

    /**
     * 供应商ID
     */
    private Long supplierId;

    /**
     * 供应商名称
     */
    private String supplierName;
    
    /**
     * 供应商编码
     */
    private String supplierCode;

    /**
     * 采购数量
     */
    private Integer purchaseQuantity;

    /**
     * 采购金额
     */
    private BigDecimal purchaseAmount;

    /**
     * 入库状态（0 待入库、1 部分入库、2 全部入库等）
     */
    private Integer storageStatus;
    
    /**
     * 入库状态名称
     */
    private String storageStatusName;

    /**
     * 付款状态(0 待付款 1 部分付款 2 已付款 3 退货)
     */
    private Integer paymentStatus;
    
    /**
     * 付款状态名称
     */
    private String paymentStatusName;
    
    /**
     * 已入库数量
     */
    private Integer storedQuantity;
    
    /**
     * 已支付金额
     */
    private BigDecimal paidAmount;
    
    /**
     * 采购人ID
     */
    private Integer uId;
    
    /**
     * 采购人姓名
     */
    private String purchaserName;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /**
     * 更新时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;
}
